《Android开源库》 MPAndroidChart Wiki(译文)~Part 5

19. ChartData子类

这篇wiki主要关注ChartData子类的具体介绍。至于此部分没有提及到的ChartData的子类,代表他们没有特性功能需要介绍。

BarData

方法 使用
setGroupSpace(float percent) 按照一个栏的总宽度的百分比设置不同数据集的条形组之间的空间.100%代表一个条形的宽度。默认为80%
isGrouped() 如果此数据对象分组(由多个DataSet组成),则返回true,否则返回false
***
### ScatterData
方法 使用
————- ————
getGreatestShapeSize() 返回此数据对象包含的所有ScatterDataSets的最大形状大小。
*****
### PieData
方法 使用
————- ————
getDataSet() 返回包含的PieDataSet对象。PieData不能包含多个PieDataSet对象
setDataSet(PieDataSet set) 设置PieDataSet
***
### BubbleData
方法 使用
————- ————
setHighlightCircleWidth(float width) 设置当数据对象包含的所有BubbleDataSet对象处于突出显示状态时的环绕该气泡的圆的宽度。单位dp
****
### CombinedData
该数据对象被设计为包含所有其他数据对象的实例。使用setData(…)方法提供此对象的数据。这仅用于CombinedChart。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class CombinedData extends ChartData {

// ...

public CombinedData(List<String> xVals) { ... }

public CombinedData(String[] xVals) { ... }

public void setData(LineData data) { ... }

public void setData(BarData data) { ... }

public void setData(ScatterData data) { ... }

public void setData(CandleData data) { ... }

// ...
}

20. DataSet类(通用样式)

DataSet是如LineDataSet,BarDataSet等所有数据集类的基类。

1
public class LineDataSet extends DataSet { ...

DataSet代表一组或者一类在图表中归结在一起的数据条目集合。设计它的目的是为了将图表中的不同组数据进行逻辑分离。(比如线形图中的特定一条线,柱形图中的特定一组柱形)

以下提到的方法在DataSet类中实现,因此可用于所有子类。

20.1 数据样式

方法 使用
setValueTextColor(int color) 设置 DataSet 数据对象包含的数据的值文本的颜色
setValueTextColors(List colors) 设置一个颜色列表用于显示值
setValueTextSize(float size) 设置 DataSet 数据对象包含的数据的值文本的大小(单位是dp)
setValueTypeface(Typeface tf) 设置 DataSet 数据对象包含的数据的值文本的字体
setValueFormatter(ValueFormatter f) 为DataSet 数据对象包含的数据设置自定义的 ValueFormatter。更多关于ValueFormatter,请查阅此处
setDrawValues(boolean enabled) 启用/禁用 绘制所有 DataSet 数据对象包含的数据的值文本

以上方法同样适用于ChartData对象,只是操作结果针对的是其包含的所有的DataSet。


20.2 高亮

方法 使用
setHighlightEnabled(boolean enabled) 设置为true,允许通过点击高亮突出 ChartData 对象和其 DataSets
setDrawVerticalHighlightIndicator(boolean enabled) 启用/禁用纵向选中高亮指示线。如果禁用,指示线将不会被绘制
setDrawHorizontalHighlightIndicator(boolean enabled) 启用/禁用横向选中高亮指示线。如果禁用,指示线将不会被绘制
***
### 20.3 Getter/Convenience
方法 使用
——– ————–
contains(Entry entry) 检查此数据对象是否包含指定的Entry 。 注:这个相当影响性能,性能严峻情况下,不要过度使用。

21. DataSet子类(特定样式)

本章wiki专注于DataSet类的子类。此处未提及的DataSet的所有其他子类代表它们没有特定的增强功能。

21.1 Line-, Bar-, Scatter-, Bubble- & CandleDataSet

方法 使用
setHighLightColor(int color) 设置高亮颜色。不要忘记用getResources().getColor(…) 或者 Color.rgb(…)来解析颜色(或者使用Color.BLACK这种简单的方式)
*****
### 21.2 Line-, Bar-, Scatter-, Candle- & RadarDataSet
方法 使用
———— ——————
setDrawHighlightIndicators(boolean enabled) 启用/禁用垂直和水平高亮指示线。调用setDrawVerticalHighlightIndicator(…)和setDrawHorizo​​ntalHighlightIndicator(…)进行单独配置
setHighlightLineWidth(float width) 设置高亮线(十字准线)的宽度。单位dp
**
### 21.3 Line- & RadarDataSet
方法 使用
———— ——————
setFillColor(int color) 设置用于填充线条表面的颜色
setFillAlpha(int alpha) 设置用于填充线条表面(0-255)的Alpha值(透明度),默认值:85,255 =完全不透明,0 =完全透明
setFillDrawable(Drawable d) 设置一个可以覆盖填充区域的Drawable。这也允许使用渐变Drawable
setDrawFilled(boolean filled) 如果DataSet需要绘制填充(表面,区域),而不单单是一条线,那么将此项设置为true,禁用此功能将提升性能。请注意,此方法使用canvas.clipPath(…)方法绘制填充区域。对于API级别<18(Android 4.3)的设备,应关闭图表的硬件加速。具体查阅此处,默认为false
setLineWidth(float width) 设置线条宽度(最小=0.2f,最大10f);默认1f。注意:细线==性能更好,粗线==性能更差
**
以下提到的方法仅适用于具体提到的DataSet子类。
### 21.4 LineDataSet
方法 使用
———— ——————
setCircleRadius(float size) 设置的圆形值指示符的大小(半径),默认大小= 4F
setDrawCircles(boolean enabled) 设置为true启用LineDataSet的圆形指示器。默认为true
setDrawCubic(boolean enabled) 如果设置为true,则线条图线将以立方式而不是线性绘制。这对性能有负面影响!默认值:false
setCubicIntensity(float intensity) 设置立方体线的强度(如果启用)。 Max = 1f =非常立方,Min = 0.05f =低立方效应,默认值:0.2f
setCircleColor(int color) 设置圆形指示器的颜色
setCircleColors(List colors) 设置此LineDataSet外圈应具有的颜色。还有需要其他的方法来设置外圈的颜色
setCircleColorHole(int color) 设置内圈的颜色
setDrawCircleHole(boolean enabled) 设置为true.在绘制内圈,否则不绘制内圈
enableDashedLine(float lineLength, float spaceLength, float phase) 启动虚线绘制,具体像”- - - - - -“这样. “lineLength”虚线段长度, “spaceLength”虚线段之间的空隙, “phase”是偏移量,以度数为单位(通常为0)
****
### 21.5 BarDataSet
方法 使用
———— ——————
setBarSpacePercent(float percent) 以总条宽的百分比设置条之间的间距
setBarShadowColor(int color) 设置用于绘制条形阴影的颜色。条形图的阴影部分是一个用来表示最大值的界面。使用getResources().getColor(…) 或者Color.rgb(…)来设置这个值
setHighLightAlpha(int alpha) 设置用于绘制高亮指示条的alpha值(透明度)。最小值=0(完全透明),最大值=255(完全不透明)
setStackLabels(String[] labels) 设置不同值的条形堆栈的标签,如果有标签的话
****
### 21.6 ScatterDataSet
方法 使用
———— ——————
setScatterShapeSize(float size) 设置绘制的散点图将具有的密度像素的大小。这仅适用于非自定义形状
setScatterShape(ScatterShape shape) 设置在值所在的位置绘制的形状
****
### 21.7 CandleDataSet
方法 使用
———— ——————
setBodySpace(float space) 设置每个蜡烛体左侧和右侧留出的空间,默认为0.1f(10%),最大0.45f,最小0f
setShadowWidth(float width) 设置蜡烛线的宽度,单位dp。默认3f
setShadowColor(int color) 设置蜡烛线的颜色
setDecreasingColor(int color) 设置当打开>关闭时应该用于此DataSet的唯一的颜色
setIncreasingColor(int color) 设置当打开<=关闭时应该用于此DataSet的唯一的颜色
setDecreasingPaintStyle(Paint.Style style) 设置当打开>关闭时的Paint风格(填充或者线条)
setIncreasingPaintStyle(Paint.Style style) 设置当打开<=关闭时的Paint风格(填充或者线条)
****
### 21.8 BubbleDataSet
方法 使用
———— ——————
setHighlightCircleWidth(float width) 设置在突出显示状态下气泡周围的圆的宽度,单位dp

21.9 PieDataSet

方法 使用
setSliceSpace(float degrees) 设置饼图切片之间的空隙。默认:0->没有空隙,最大20,最小0(没有空隙)
setSelectionShift(float shift) 设置此DataSet的突出显示的饼图切片距离图表中心“偏移”的距离,默认为12f
# 译文
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×